home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 23 / Amiga Format AFCD23 (Feb 1998, Issue 107).iso / -seriously_amiga- / shareware / sound / octarexx / flip_track.rexx < prev    next >
OS/2 REXX Batch file  |  1997-12-01  |  1KB  |  49 lines

  1. /* flip_track.rexx */
  2. /* flips a track or selected range (1 track) */
  3. /* $VER: FlipTracks_v1.00 */
  4.  
  5. ADDRESS OCTAMED_REXX
  6. OPTIONS RESULTS
  7.  
  8. rn_isranged VAR isranged            /* is there a range? */
  9.  
  10. IF isranged THEN DO
  11.    rn_getrangestartline VAR rn_st
  12.    rn_getrangeendline VAR rn_end
  13.    END
  14. ELSE DO
  15.    rn_st = 0
  16.    ed_getnumlines VAR rn_end
  17.    END
  18.  
  19. length = rn_end - rn_st + 1
  20. op_update off
  21.  
  22. DO i = 0 to length % 2             /* do inversion for half of range length */
  23.  
  24.    drop top_note top_inum top_cmdnum top_qual bot_note bot_inum bot_cmdnum bot_qual
  25.  
  26.    ed_getdata 'l' rn_st + i 'note' VAR top_note          /* get top note data */
  27.    ed_getdata 'l' rn_st + i 'inum' VAR top_inum
  28.    ed_getdata 'l' rn_st + i 'cmdnum' VAR top_cmdnum
  29.    ed_getdata 'l' rn_st + i 'qual' VAR top_qual
  30.  
  31.    ed_getdata 'l' rn_end - i 'note' VAR bot_note          /* get BOTtom note data */
  32.    ed_getdata 'l' rn_end - i 'inum' VAR bot_inum
  33.    ed_getdata 'l' rn_end - i 'cmdnum' VAR bot_cmdnum
  34.    ed_getdata 'l' rn_end - i 'qual' VAR bot_qual
  35.  
  36.    ed_setdata 'l' rn_st + i 'note' bot_note          /* set top note data */
  37.    ed_setdata 'l' rn_st + i 'inum' bot_inum
  38.    ed_setdata 'l' rn_st + i 'cmdnum' bot_cmdnum
  39.    ed_setdata 'l' rn_st + i 'qual' bot_qual
  40.  
  41.    ed_setdata 'l' rn_end - i 'note' top_note          /* set BOTtom note data */
  42.    ed_setdata 'l' rn_end - i 'inum' top_inum
  43.    ed_setdata 'l' rn_end - i 'cmdnum' top_cmdnum
  44.    ed_setdata 'l' rn_end - i 'qual' top_qual
  45.  
  46.    END
  47.  
  48. op_update on
  49.